package com.zmm.zebulon.module.mp.convert.account;

import com.zmm.zebulon.common.pojo.PageResult;
import com.zmm.zebulon.module.mp.controller.admin.account.vo.MpAccountCreateReqVO;
import com.zmm.zebulon.module.mp.controller.admin.account.vo.MpAccountRespVO;
import com.zmm.zebulon.module.mp.controller.admin.account.vo.MpAccountSimpleRespVO;
import com.zmm.zebulon.module.mp.controller.admin.account.vo.MpAccountUpdateReqVO;
import com.zmm.zebulon.module.mp.dal.dataobject.account.MpAccountDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * description: TODO
 *
 * @author zebulon
 * package com.zmm.zebulon.module.mp.convert.account
 * name: MpAccountConvert
 * date 2024/1/11 21:45
 */
@Mapper
public interface MpAccountConvert {

    MpAccountConvert INSTANCE = Mappers.getMapper(MpAccountConvert.class);

    MpAccountDO convert(MpAccountCreateReqVO bean);

    MpAccountDO convert(MpAccountUpdateReqVO bean);

    MpAccountRespVO convert(MpAccountDO bean);

    List<MpAccountRespVO> convertList(List<MpAccountDO> list);

    PageResult<MpAccountRespVO> convertPage(PageResult<MpAccountDO> page);

    List<MpAccountSimpleRespVO> convertList02(List<MpAccountDO> list);

}
